<template>
    <div class="app-container">


        <el-row :gutter="20" v-if="dataList.length > 0">

            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" style="margin-top: 20px"
                    v-for="(item, index) in dataList" :key="index"
            >

                <el-card class="box-card">

                    <div slot="header" class="clearfix"
                         style="white-space: nowrap; overflow: hidden; text-overflow: ellipsis;"
                    >
            <span style="font-size: 16px; height: 35px; display: inline-block; line-height: 35px">{{
                    item.groupName
                }}</span>
                    </div>

                    <el-row :gutter="32" v-if="item.sensorVOS.length>0">
                        <el-col :xs="24" :sm="24" :md="12" :lg="6" v-for="(item2, index2) in item.sensorVOS"
                                :key="index2"
                        >
                            <div>
                                <component :is="item2.chart"
                                           :height="'300px'"
                                           :title="item2.sensorName"
                                           :value="item2.sensorValue"
                                           :unit="item2.unit"
                                           :params="item2.chartParam"
                                >
                                </component>
                            </div>
                        </el-col>
                    </el-row>

                    <el-empty description="暂无信息点" v-if="item.sensorVOS.length===0"></el-empty>

                </el-card>

            </el-col>

        </el-row>

        <el-empty description="暂无分组" v-if="dataList.length===0"></el-empty>


    </div>
</template>

<script>
import { listGroup } from '@/api/biz/group'
import gauge from '@/views/common/chart/Gauge.vue'
import temperature from '@/views/common/chart/Temperature.vue'
import lcd from '@/views/common/chart/Lcd.vue'

export default {
    name: 'environmentIndex',
    components: {
        gauge,
        temperature,
        lcd
    },
    data() {
        return {
            dataList: []
        }
    },

    created() {
        this.getListGroup()
    },

    methods: {
        getListGroup() {
            listGroup().then(response => {
                this.dataList = []
                // console.log(response)
                this.dataList = response.data
            })
        }
    }
}
</script>

<style scoped lang="scss">
html, body {
    height: 100%;
    background: #DDDDDD;
}

.home {
    width: 100%;
    height: 100%;
    background: #DDDDDD;

    blockquote {
        padding: 10px 20px;
        margin: 0 0 20px;
        font-size: 17.5px;
        border-left: 5px solid #eee;
    }

    hr {
        margin-top: 20px;
        margin-bottom: 20px;
        border: 0;
        border-top: 1px solid #eee;
    }

    .col-item {
        margin-bottom: 20px;
    }

    ul {
        padding: 0;
        margin: 0;
    }

    font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 13px;
    color: #676a6c;
    overflow-x: hidden;

    ul {
        list-style-type: none;
    }

    h4 {
        margin-top: 0;
    }

    h2 {
        margin-top: 10px;
        font-size: 26px;
        font-weight: 100;
    }

    p {
        margin-top: 10px;

        b {
            font-weight: 700;
        }
    }

    .update-log {
        ol {
            display: block;
            list-style-type: decimal;
            margin-block-start: 1em;
            margin-block-end: 1em;
            margin-inline-start: 0;
            margin-inline-end: 0;
            padding-inline-start: 40px;
        }
    }

    display: flex;
    // 主轴的方向
    flex-direction: column;

    .level1 {

        display: flex;
        width: 100%;

        div {
            border-radius: 10px;
            background: #FFFFFF;
            width: 100%;
        }

        .left {
            margin-right: 20px;
            min-width: 45%;
        }

        .right {
            min-width: 45%;
        }
    }

    .level2 {
        margin-top: 30px;
        display: flex;
        width: 100%;
        height: 100%;

        div {
            border-radius: 10px;
            background: #FFFFFF;
            height: 300px;
            flex: 1
        }

        .middle {
            margin-left: 20px;
            margin-right: 20px;
        }

    }

}

</style>

